/*
    SUSAN® - Sole of Unix Save ANything

   Copyright (C) 2018-2019 Hechzh Property

   
*/

#if defined(HAVE_MINGW)
#include "include/susan.h"
#include "gtest/gtest.h"
#else
#include "gtest/gtest.h"
#include "include/susan.h"
#endif

#include "lib/alist.h"
#include "lib/tls_conf_cert.h"

TEST(bsock, config_tls_cert_verify_common_names_list_test)
{
  std::vector<std::string> list;
  const char* cstrings[3] = {"123", "456", "789"};
  list.push_back(std::string(cstrings[0]));
  list.push_back(std::string(cstrings[1]));
  list.push_back(std::string(cstrings[2]));

  TlsConfigCert tls_config_cert;

  /* list is destroyed by destructor of TlsConfigCert */
  tls_config_cert.allowed_certificate_common_names_ = list;

  std::vector<std::string> vec =
      tls_config_cert.allowed_certificate_common_names_;

  EXPECT_EQ(vec.size(), 3);
  EXPECT_STREQ(vec.at(0).c_str(), "123");
  EXPECT_STREQ(vec.at(1).c_str(), "456");
  EXPECT_STREQ(vec.at(2).c_str(), "789");
}
